Method and apparatus for data recipient storage and retrieval of data using a network communication device

ABSTRACT

A system and method for data recipient invoked electronic commerce allowing data subjects to provide information over a network and data recipients to receive such information relating to the needs of a data subject such as purchases, distribution of application information and the like. The system includes a server having software which gathers the information from a data subject to complete a transaction over a network. The system has a data subject data structure that stores information for registered data subjects. The software is able to access the data subject data structure and enter the data subject&#39;s information during subsequent transactions. Having the software obtain and enter the data subject&#39;s purchasing information, the data subject does not have to enter the same information every time the data subject desires to effect a transaction over the network. In alternate embodiments, the same technology can be applied to other arenas where a user may have to enter the same repetitive information.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of the following co-pendingU.S. application Ser. No. 13/484,209 filed May 30, 2012, which is acontinuation of U.S. application Ser. No. 12/751,861 filed Mar. 31,2010, now U.S. Pat. No. 8,244,641 which is a continuation of U.S.application Ser. No. 12/327,768 filed Dec. 3, 2008, now U.S. Pat. No.7,693,796, which is a continuation of U.S. application Ser. No.11/588,345 filed Oct. 27, 2006, now U.S. Pat. No. 7,475,043, which is acontinuation of U.S. application Ser. No. 09/552,088 filed Apr. 19,2000, now U.S. Pat. No. 7,146,341, which is a continuation-in-part ofU.S. application Ser. No. 09/167,873 filed Oct. 7, 1998, now U.S. Pat.No. 6,092,053. The contents of the above referenced applications andpatents are incorporated herein by reference.

FIELD OF THE INVENTION

This invention relates generally to a method and system where certaindata subject information is stored on a server and is provided to athird party thereby allowing the data subject with a networkcommunication device to send data over a network in an easy and safemanner.

BACKGROUND OF THE INVENTION

The essence of electronic commerce is the exchange of information. Themost common form of electronic commerce entails the purchase of productsover the Internet using a credit card. Information necessary toconsummate a credit card transaction includes the data subjects name,address, credit card information, and the amount to be charge. While theterm “electronic commerce” is generally associated with the purchase ofgoods and services over the Internet, the term encompasses othertransactions as well. For example, applications for insurance, collegeadmissions, and loans are transactions that are not purchasetransactions. Hence the term “transaction” is generally used herein todescribe all manner of interactions over a network of the type notedabove. The common element to all transactions is the transfer of datafrom one party to another.

A person want to send personal data (the “data subject”) can either typein the required information each time a transaction is consummated orstore the data for retrieval. Typing in data is not only inefficient andprone to errors, but discourages electronic commerce. Using a localsoftware solution is generally considered undesirable, as most suchsoftware programs are proprietary to a particular payment system,require the data subject to become skilled in the operation of theprogram, and are perceived as slow or unwieldy.

Recently, wireless Internet services have been developed to allow datasubject use of wireless network communication devices such as wirelessphones and PDAs (personal digital assistants) to send and receiveinformation over the Internet. Wireless devices generally have limitedmemory making wallet software that is resident on a networkcommunication device impractical. Even if wallet software for wirelessdevices could be written compactly, updating such software could provevery difficult. Many of these phones use proprietary software, so customwallet software would need to be provided.

Similarly, cable television systems have evolved into two-way networksin which the data subject uses a network device to send and receiveinformation over the cable network. The cable network communicationdevice may be a set-top box or a remote unit. Like the wireless device,memory is limited and wallet software is impractical.

Therefore, a need exists for a system that allows a data subject to senddata information to a data recipient over a common network in a mannerthat offers security, allows access from any network communicationdevice that has access to the common network, and allows system upgradeswithout dependency on changing software on the data subjects' networkcommunication device.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to reduce the numberof steps a data subject is required to perform in order to sendinformation with a network communication device over a common network.

A further object of the present invention is to reduce the number ofsteps a data subject is required to perform in order to purchase aproduct with a wireless device over a common network.

A further object of the present invention is to reduce the number ofsteps a data subject is required to perform in order to purchase aproduct with a wireless device over the Internet.

A further object of the present invention is to reduce the number ofsteps a data subject is required to perform in order to purchase aproduct over a network using a device that has reduced functionality,such as a wireless communication device or set top box connected to acable network.

A further object of the present invention is to eliminate the need fordata subjects to leave a data recipient's site to acquire an electronicform of payment.

A further object of the present invention is to eliminate walletsoftware and personal/identification information that is permanentlystored on the data subject's NCD.

A further object of the present invention is to allow the systemadministrator of the data repository to upgrade the software on suchserver at any time.

A further object of the present invention is to allow flexibility inproviding new or modified services to the data subjects via upgrades tosoftware stored on the data repository.

A further object of the present invention is to reduce the number ofpayment parameters data subjects are required to fill in when purchasingproducts with a wireless device over a network.

A further object of the present invention is to allow data subjectinformation to be provided to data recipients using payment systems fromvarious service providers.

A further object of the present invention is to use the architecture ofthe data repository to aid the data subject with a wireless device indistributing all manner of information, not just purchase/moneyinformation, to a variety of recipients when those recipients are toreceive essentially the same information from one recipient to the next.

A further object of the present invention is to provide a gatewaycommunicating with the data repository using conventional networkprotocols and with the data subject NCD using network protocolsappropriate to the network to which the NCD communicates.

The present invention is a system for presenting a data subject'spurchasing information to a data recipient's computer to allow a sale ofgoods or services to be consummated. The system comprises a networkcommunication device associated with a data subject (the “data subject'sNCD”), a computer associated with a data recipient (the “datarecipient's computer”), a gateway that connects the network to which thedata subject's NCD communicates to the network on which the datarepository and the data recipient's computer are connected (the “NCDgateway”), and a server (the “data repository” data repository) on whichthe necessary and desirable information about the data subject isstored. The data subject's NCD, the data recipient's computer, the NCDgateway, and the data repository are connected to a common network, suchas the Internet, and communicate using communication protocols. The datasubject's NCD operates software that can interpret and process filesfrom the data recipient's computer and the data repository (the “NCDsoftware”). The data recipient's computer operates as a web server,provides transaction processing, and performs other functions. The datarecipient's computer may be a single device, or may, at the datarecipient's discretion comprise a number of devices that mayor may notbe co-located. The data recipient's computer also operates software(“client software”) that communicates with the data repository. The datarepository operates data repository software that provides access toinformation stored in various databases, logs, and/or data structures.

The present invention allows data subjects with NCDs operating on anetwork (the “NCD network”) to send transaction data over a network towhich the data recipient computer and the data repository are connected(the “common network”) and allows data recipients to receive datarelating to that transaction. In the preferred embodiment, thetransaction involves the purchase of goods and services, the commonnetwork connecting the NCD gateway, the merchant's computer, and thedata repository is the Internet, and the transaction data is purchasingdata. However, the invention is not limited to this embodiment and thedescription of a purchase transaction is not meant as a limitation.

During the shopping process, a data subject browses a data recipient'sWeb site to via an NCD. The NCD may be any communications deviceconnected to the common network via the NCD gateway. In this example, itis assumed that the NCD is a wireless device. The data recipient's Website includes goods and/or services (herein, “item”) for sale. The datarecipient's Web site also operates client software. When the datasubject requests a data recipient's offer, the client software sends afile readable by the NCD software and the data recipient's offer to theNCD software on the data subject's NCD. The data recipient's offercomprises in part a transaction number that is not representative of theproduct code or description. The NCD software readable file includes anaddress to the data recipient's Web page and instructions that instructthe NCD software to communicate with the data repository via a NCDgateway. The data recipient's offer passes through the data subject'sNCD to the NCD gateway to the data repository software.

The data repository software returns a message to the NCD software viathe NCD gateway and instructs the NCD software to display a wallet onthe data subject's NCD. The content of this wallet depends on whether ornot the data subject is known to the data repository software.

If the data subject is known to the data repository software, the datarepository software takes information contained in the data recipient'soffer and forwards it to the in a format that allows the NCD software todisplay the data recipient's offer and sends the data recipient's offerto the data subject's NCD where the data recipient's offer is displayedby the NCD software. The data subject is prompted to decide whether ornot to purchase the item. Typically, this communication occurs by thedata subject making a menu selection resulting in a message beingcommunicated to the data repository via the NCD gateway.

If the data subject elects to purchase the item, the data repositorysoftware forwards information to the data recipient's computer. Theinformation includes information from the data recipient's offer and thedata subject's personal information (e.g., credit card number, address,shipping address) which is stored on the data repository. The datarecipient's computer then uses the information to complete thetransaction.

If the data subject is unknown to the NCD gateway and data repositorysoftware, the data repository software sends a request to the datasubject's NCD via the NCD gateway. The request prompts the data subjectto provide the purchasing information to complete the transaction. Oncethe data subject provides sufficient information via the NCD gateway tocomplete the transaction, the data repository software prompts the datasubject via the NCD gateway to purchase the item as noted above. If thedata subject elects to purchase the item, then the data subject isprompted to elect to have the information retained on the datarepository for future use (the process herein referred to as“registration”). If the data subject answers “no”, then the informationis stored in a temporary data structure. Information stored in thetemporary data structure is retained for a set amount of time and is notavailable for reuse by the data subject. If the data subject answers“yes”, then the information pertaining to the data subject is stored ina data structure intended for the retention and future use by the datasubject.

If the data subject elects to register with the data repositorysoftware, during the registration process, the NCD software is sent aNCD software identifier. In the preferred embodiment, the NCD softwareidentifier is a cookie. The NCD software identifier contains data thatare crypto graphically protected to enhance security. The NCD softwareidentifier allows the data repository software to identify the NCDsoftware and permits a customer to authenticate himself or herself,thereby permitting the data repository software to use the datasubject's stored information in future transactions.

The system also allows data subjects who are registered on a differentbrowser to authorize the data repository software to use the datasubject's stored information. This situation occurs when the datarepository software cannot identify the NCD software identifier becausethere is no NCD software identifier in the NCD software or the NCDsoftware identifier cannot be used to identify the particular datasubject using the NCD software.

Since the system establishes communication links between the datarecipient's computer and the data repository, the system can beoptimized in several respects. For example, the price of an item may beaffected by the location to which the item is to be shipped, the methodof shipping, and by tax obligations. The data repository softwarecommunicates information pertaining to the data subject to the datarecipient's computer permitting the data recipient's computer todetermine a “final” price based on the data subject's information, i.e.,shipping address and/or preferences.

The data repository software can associate a data subject with anidentification code that can be presented to the data recipient'scomputer, thus allowing the data recipient to “recognize” a data subjectand provide customer-specific messages, displays, and offers. The datarepository software and/or NCD gateway can tailor its communication withthe data subject's NCD in accordance with a profile created by the datarepository software or NCD gateway. The profile is based uponpreferences chosen by the data subject or created by the data repositorysoftware or NCD gateway based on the data subject's behavior, frompreferences chosen by the data recipient, the wireless device type, orthe like.

With respect to data subjects, the system is optimized to provide all ofthe purchasing information to the data subject thereby allowing the datasubject to verify the information and make a purchase decision withoutfurther purchasing information input from the data subject. The systemcan also establish a dialogue via the NCD gateway between the datasubject's NCD and the data repository to permit the data subject toselect from options such as which credit card to use, the shippingaddress, and the shipping means.

In the preferred embodiment, the data subject's NCD is a wireless deviceand the NCD gateway operates a version of the wireless applicationprotocol (“WAP”). However, the NCD may be any device that may access thecommon network through a gateway and send and receive files in alanguage that is common to the data subject's computer and the datarecipient's computer. For example, the NCD may be a set-top box used bya data subject to interact with a cable television system that connectsto the Internet through a NCD gateway.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a wireless network connected to the Internet througha WAP-enabled gateway.

FIG. 2A illustrates the process of purchasing an item over a network.

FIG. 2B illustrates the actions of the data repository software if itdetermines that the information provided by the data subject isinsufficient to identify the data subject.

FIG. 2C illustrates the actions of the data repository if the item priceneeds to be adjusted due to the data subject's shipping address and/orshipping preference.

FIG. 2D illustrates the actions of the system of the present inventionif the data subject elects to purchase an item.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENT

Referring to FIG. 1, the elements of the present invention areillustrated. The preferred embodiment for this function is assisted bythe technology disclosed in U.S. Pat. No. 5,327,529, which issued onJul. 5, 1994, and is incorporated herein by reference. A portion of thetechnology described in the '529 patent, which is referred to as the“Flex UI Patent,” has been realized by Geoworks of Alameda, Calif., inthe implementation of the Wireless Application Protocol (WAP) and thecorresponding Wireless Markup Language (WML). WAP was promulgated toallow application programs to be written to operate on a wide array ofwireless communications networks. With WAP and the WML, an applicationcan be written once, and it will operate on any WML-compliant deviceoperating on a WAP-compliant wireless communications network.

The present invention allows data subject 100 to purchase a product orservice (hereinafter an “item”) over common network 160 and allows datarecipient 104 to receive payment information relating to thetransaction.

To purchase an item, data subject 100 uses data subject's NCD 102. Datasubject's NCD 102 operates software that is either a web browser oremulates a web browser (the “NCD software”) 104 or could also besoftware with the requisite capability of displaying the informationsupplied by data recipient computer 122. NCD software 104 allows datasubject 100 to download and display Web pages.

To receive payment information relating to the purchase, data recipient120 uses data recipient computer 122. Data recipient computer 122operates network server software 124 and client software 126. Networkserver software 124 displays a data recipient's Web pages. Clientsoftware 126 allows data recipient 104 to communicate with the Datarepository (the “data repository”) 140.

In the preferred embodiment, data repository 140 comprises datarepository software 142 which gathers and stores the purchasinginformation to complete a purchasing transaction over common network160, temporary data structure 144 which stores data subject informationfor a limited amount of time and cannot be used in future transactions,data subject data structure 146 which stores data subject informationwhich can be used in future transactions, data recipient data structure148 which stores information pertaining to different data recipients,data subject transaction log 150 which stores information pertaining tothe transactions for registered data subjects, and data recipienttransaction log 152 which stores information pertaining to transactionsfor registered and non-registered data subjects.

Data subject's NCD 102 is connected to NCD gateway 110 over NCD network112. NCD gateway 110 incorporates software and hardware to permit thedata subject's NCD to display and implement instructions included in thefiles sent by data recipient computer 122. The present invention canoperate over various types of NCD networks both wired and wireless andsatellite, however this should not be construed as a limitation. In thepreferred embodiment, data subject's NCD 102 is a wireless device, NCDgateway 110 operates a WAP interface, NCD network 112 is a wirelessnetwork, and the computer files sent and by data subject's NCD 102, datarecipient computer 122, and data repository 140 are written in HTML.

NCD gateway 110, data recipient computer 122, and data repository 140are connected to common network 160. The present invention can operateover various types of common networks both wired and wireless. Thepresent invention can operate over the Internet, cable, intranet, LANS,and WANS however this list should not be construed as a limitation. Inthe preferred embodiment, the common network is the Internet.

Data repository software 142 gathers and stores the purchasinginformation to complete a transaction over common network 160. Datarepository software 142 gathers the transaction information directlyfrom data subject 100, from data subject data structure 146 or fromboth. If data subject 100 has not previously registered with datarepository software 142, data subject 100 is treated as a non-registereddata subject. For non-registered data subjects, data repository software142 gathers the transaction information by prompting data subject 100for the information. If data subject 100 is a registered data subject,i.e., a data subject who previously registered with data repositorysoftware 142, then data repository software 142 gathers the transactioninformation from data subject data structure 146. If additionaltransaction information is needed, data repository software 142 promptsdata subject 100 for the information.

Temporary data structure 144 stores label-value pairs relating to aparticular interaction between data subject 100 and data recipient 120.If data subject 100 is not known to data repository software 142(discussed below), data subject 100 is prompted for transactioninformation to complete the transaction. The transaction information caninclude the customer's name, billing address, shipping address, andcredit card number, however this information should not be construed asa limitation. In the preferred embodiment, the transaction informationis stored in temporary data structure 144 that is located at datarepository 140. In alternative embodiments, the transaction informationcan be stored on a dedicated server or a shared server.

If data subject 100 declines to have transaction information stored atdata repository 140, the transaction information remains in temporarydata structure 144 for a set period of time. The transaction informationin temporary data structure 144 is not available to data subject 100 forfuture transactions. If data subject 100 elects to have transactioninformation stored at data repository 140, the transaction informationin temporary data structure 144 will be saved for subsequent use in datasubject data structure 146.

Data subject data structure 146 stores label-value pairs relating todata subjects, including data subject 100, that have completed theregistration process with the operator of data repository 140. Thelabel-value pairs in data subject data structure 146 representinformation that is necessary, and may include information that isuseful to complete a transaction. The transaction information caninclude the customer's name, billing address, shipping address, andcredit card number, however this information should not be construed asa limitation. The useful information can also include email, telephonenumbers, facsimile numbers, and user preference data (regarding shippingaddress, shipping method, and related data), however this informationshould not be construed as a limitation.

Data recipient data structure 148 stores label-value pairs relating todata recipients, including data recipient 120 that have completed theregistration process with the operator of data repository 140. Thelabel-value pairs in data recipient data structure 148 representinformation that is necessary to identify data recipient 120 and datarecipient computer 122. This information includes contact information,data recipient identification number, network location(s) for the datarecipient computer 122, payment card type, accepted currencies, andpayment methods (e.g., electronic check, micropayments), however thisinformation should not be construed as a limitation.

Data subject transaction log 150 stores label-value pairs relating totransactions performed by registered data subjects. Data recipienttransaction log 152 stores label-value pairs relating to transactionsperformed by registered and non-registered data subjects, including datasubject 100. The operator of data repository software 142 can allow datasubjects and data recipients access to the information contained intheir respective data structures as deemed necessary. For instance, datasubject 100 can be given a summary of the data subject's transactionsover a period of time. Data recipient 120 can be given a summary of thedata recipient's transactions over a period of time.

U.S. patent application Ser. No. 09/167,873, filed Oct. 7, 1998discloses the underlying wallet process and system of the presentinvention, and is incorporated here in its entirety. Data recipientsinvoke commerce by sending an offer to a wallet server via the datasubject. The wallet server supplies the information needed by the datarecipient to complete the transaction.

In the preferred embodiment of the present invention illustrated hereinthe data subject's NCD is a wireless device that communicates over awireless network to a WAP-enabled gateway. It should be noted that whilea WAP-enabled gateway is discussed, this is not meant as a limitationsince WAP is but one protocol for making two different networks “talk”to one another. The concept may be similarly employed to, for example, acable network to communicate with the internet, in which case a WAPenabled gateway is not required. The data subject's NCD, the datarecipient server, and the data repository all send files in a commonlanguage. This language may be, without limitation, HTML, WML, XML, orother language. The preferred embodiment uses HTTP to send the offer tothe NCD software. The NCD software forwards the HTML and/or WML messageto a WAP-compliant NCD gateway for forwarding to the data repository.Further communication between the devices, as described earlier, isaccomplished with the aforementioned protocols to complete thetransaction.

In another embodiment of the present invention, the WAP gateway does notmerely forward information but itself stores information relevantconsumers who are connected to the wireless network. In this case,interaction can take place between the merchant and the gateway forcertain selected communications such as authentication without the needfor the consumer to be involved. This data can be stored at the gatewayand used for such limited purposes.

In another alternate embodiment, the NCD software concerts the filessent by the data recipient's computer and the data repository into alanguage that the NCD can interpret. The NCD software also convertsfiles created by the NCD software into a language that the datarecipient's computer and the data repository can interpret.

Referring to FIG. 2A, the process of purchasing an item over a networkis illustrated. The following process is the preferred embodiment of thepresent invention, in alternate embodiments, similar processes can occurin different orders. Additionally, a transaction involving the exchangeof information may involve the storage and retrieval of data differentfrom that described in the following example.

In the preferred embodiment, the process starts with a data subjectrequesting a data recipient's offer 200 from a data recipient. Inresponse to the data subject's request, the data recipient's computerresponds by sending a NCD software readable file and the datarecipient's offer to the data subject's computer 202. The NCD softwareprocesses the NCD software readable file and sends the data recipient'soffer and a message to the data repository 204.

The data recipient's offer includes the following information, howeverthis information should not be considered a limitation: data recipientidentifier, price of the item, a item, a form of digital signature ofthe data recipient, a final price indicator, and a transaction number.The data recipient identifier identifies the data recipient who isoffering the item for sale. The price of the item is cost to purchasethe item. A digital signature of the data recipient is used to ensurethe validity of the offer. The final price indicator is used to indicatewhether the final cost for the item is affected by the data subject'sshipping address and/or shipping preference. The transaction number isused for tracking purposes. The transaction number does not contain anyproduct identifying information. The transaction number acts as anidentifier for identifying a transaction.

The message sent from the NCD software to the data repository indicateswhether the NCD software contains an NCD software identifier. In thepreferred embodiment. the NCD software identifier is a cookie. A NCDsoftware identifier identifies the data subject browser on a specificdata subject's NCD. The data repository software receives and processesthe message to determine if the NCD software contains an identifier thatidentifies a data subject that matches a data entry in a file in thedata subject data structure of the data repository 206. The datarepository software determines whether a single user or multiple usershave used the NCD software 208 by checking the data subject datastructure. If the data repository software identifies more than oneuser, the data repository software will select a user based on aselection criteria generated by the operator of the data repository. Ifthe user selected by the data repository software is not the currentuser• and the current user objects, then the data subject is asked foridentification 210. If the current user does not object, as describedbelow, the current user cannot complete a transaction unless the currentuser enters the proper passphrase which belongs to the selected user.This process requires the data repository software to send a message tothe data subject's computer prompting the data subject to provideinformation to identify the data subject. In the preferred embodiment,the data repository software prompts the data subject for the datasubject's identification number, email address, and a passphrase. Thedata subject's identification number, email address, and passphrase areused to authenticate the data subject. These entries were provided bythe data subject during the registration process which is discussedbelow. In alternate embodiments, the data subject can be prompted fordifferent information to identify the data subject.

The data subject's response is sent back to the data repository wherethe data repository software then determines if the data subject isknown to the data repository software 212. A known or registered datasubject is a data subject who has previously registered with the datarepository software and whose information matches information suppliedby the data subject during a prior registration. If the data repositorysoftware determines that the information provided by the data subject isinsufficient to identify the data subject, then the data repositorysoftware prompts the data subject for the same information again. Theoperator of the data repository can set the number of iterations thatthe data subject is prompted for the data subject's identity. If thedata subject's response matches the information the data subjectsupplied during registration, then the data repository software accessesand gathers the data subject's information which is stored in the datasubject data structure (CDS) 214.

In an alternative embodiment, the system can include a plurality of datarepositories. In such a system, the data subject would be registered onone of the data repositories. If the data repository software determinesthat the information provided by the data subject does not match theinformation on the data repository the data subject is connected to,then the data repository software will communicate with the other datarepositories to identify the data subject and obtain the data subject'sinformation.

If the NCD software does not contain a NCD software identifier or if theinformation the data subject provided does not properly identify thedata subject, i.e., the data subject is not found in a file in the datasubject data structure of the data repository, the data repositorysoftware prompts the data subject for the purchasing information 216.This is accomplished by the data repository software sending a form tothe NCD software. In an alternative embodiment. the data subject isprompted for the purchasing information using a plurality of forms. Theform or forms prompts the data subject to provide the purchasinginformation to complete the transaction. The purchasing informationincludes the data subject's name, address, shipping address, and creditcard number, however this list should not be construed as a limitation.In the preferred embodiment, the data subject has the option ofindicating that the data subject is a registered data subject.

The data subject's response or responses are sent to the data repository218. The data repository software then determines if the data subjectclaims to be a registered data subject 220. If the data subject claimsto be a registered data subject, then the data repository softwareprompts the data subject for proof 222. In the preferred embodiment,this is accomplished by the data repository software prompting the datasubject for the data subject's identification number, email address, anda passphrase. The data subject's identification number, email address,and passphrase are used to authenticate the data subject. These entrieswere provided by the data subject during the registration process whichis discussed below. In alternate embodiments, the data subject can beprompted for different information to identify the data subject.

The data subject's response for proof is sent back to the datarepository where the data repository software then determines if thedata subject is a registered data subject 224. Again, a registered datasubject is a data subject who has previously registered with the datarepository software and whose information supplied by the data subjectmatches information supplied by the data subject during a priorregistration.

If the data repository software determines that the information providedby the data subject matches the information the data subject suppliedduring registration, then the data repository software accesses andgathers the data subject's information which is stored in the datasubject data structure (CDS) 214.

Referring to FIG. 2B, if the data repository software determines thatthe information provided by the data subject is insufficient to identifythe data subject, then the data repository software prompts the datasubject for the purchasing information to complete the transaction 216.

If the data subject does not claim to be registered then the datarepository software acquires the data subject's data from the forms 226.In addition, the data subject's response can be sent to the datarecipient to determine whether the item can be sold to that datasubject. For instance, a data subject in one state may not be able topurchase a firearm if the law governing the data subject or datarecipient does not permit such a transaction. In yet another embodiment,the data subject response to one question can lead to another questionwhich requires another form. For instance, if the data subject requestsovernight shipping, the data repository software can prompt the datasubject to select the overnight shipping service.

The data repository software stores the data in a temporary datastructure 228. The data is evaluated to determine if the data subjectelected to register with the data repository 230. If the data subjectelects to become a registered data subject, then the data repositorysoftware sets the flag 232. If the data subject does not elect to becomea registered data subject then the flag is not set. Registration allowsthe data repository software to access the data subject's informationwhich was previously stored in the data subject data structure. Theinformation acquired from the forms is evaluated to determine if theinformation from the data subject is sufficient to complete the purchasetransaction 234. This step includes the data repository softwareaccessing the data recipient data structure using the data recipientidentifier to ensure that the data subject's purchasing information isin proper order, i.e., to check that the data subject's credit cardaccepted by the data recipient. If the information is not sufficient,the data subject is prompted for the information again 216. The operatorof the data repository can set the number of iterations that the datasubject is prompted for the information.

Referring to FIG. 2C, once the data repository software determines thatthe data subject's information is sufficient to complete the purchasetransaction, the data repository software reads the final priceindicator in the data recipient's offer to determine if the price needsto be adjusted due to the data subject's shipping address and/orshipping preference 236. If the price is affected by the data subject'sshipping address and/or shipping preference, then the data repositorysoftware communicates the required information to the data recipient tocalculate a new price based on the data subject's shipping address 238.In the preferred embodiment, the data repository software only sends thecity, state, country, and mail code information to the data recipient'scomputer. This information is limited to permit the revised pricecalculation without having to disclose personal information relating tothe data subject.

In alternate embodiments, the data subject's address can be the datasubject's email address or a facsimile number.

Once the data recipient responds with. the revised price or if the pricewas not affected, the data repository software presents the datarecipient's offer to the data subject 240. The data recipient's offer isdisplayed to the data subject in the area reserved for the wallet. Thedata repository software then determines if the data subject needs toenter a passphrase. If the data subject is a registered data subject whohas not gone through the authentication process yet, then the datasubject is required to enter the proper passphrase for the data subjectidentified with the NCD software identifier (cookie) 242. The offer isthen augmented with a prompt for the user to enter the data subject'spassphrase 244. The data repository software evaluates the enteredpassphrase against data held in the data subject data structure 246 todetermine if the data subject is known (registered) by the datarepository software. If the passphrase does not match, then the datasubject is prompted for the correct passphrase 244. The operator of thedata repository can set the number of iterations that the data subjectis prompted for a correct passphrase to avoid multiple fraudulentattempts to access information.

Once the data subject enters a correct passphrase or if there was no NCDsoftware identifier for the data subject, the data subject is presentedwith a buy decision 248. The data subject has several options availableat this step: the data subject can elect to buy the item, change thedata subject's information and buy the item, or cancel the transaction.If the data subject elects to change the data subject's information, thedata subject must still decide to either buy the item or cancel thetransaction after changing the information. If the data subject declinesto purchase the item, then the transaction is canceled, then theinformation held in the temporary data structure is deleted, thedialogue ends and the transaction is terminated 250.

The data subject also has the option of changing the data subject'sinformation. The data subject may wish to change such information forsuch reasons as the data subject does not agree with the selection bythe data repository software or the information contains an error. Forinstance, if the data subject wishes to change the shipping address, thedata subject can enter a new shipping address. In some instances, thedata subject can have a plurality of possible entries into the sameinformation block with a preferred entry. In such a situation, the datarepository software chooses the preferred information to enter into theinformation block. The data repository software chooses the informationvia any selection process known in the art, such as most popular, lastused, first used, etc. However, the data repository software cannotenter information into an information block if the data recipient willnot allow such an entry. For instance, a data recipient may only acceptthe ACME credit card and the data subject has not previously used anACME credit card to purchase an item using the present invention. Insuch a situation the data repository software prompts the data subjectto provide an acceptable form of payment. Information options areavailable to the data subject in the form of directory of addresses,shippers, shipping methods, credit cards, and other information options.

Referring to FIG. 2D, if the data subject elects to purchase the item,then the information regarding the transaction is delivered to the datarecipient's computer, information is written to the data recipienttransaction log, and a message confirming the transaction is sent to thedata subject's computer 252. The data repository software thendetermines if the data subject is registered 254. If the data subject isa registered data subject, then the information regarding thetransaction is written to the data subject transaction log 256.

If the data subject is non-registered data subject, i.e., not known tothe data repository software, then a NCD software identifier (i.e., acookie) is sent to data subject's computer 258 and data repositorysoftware determines if the register flag was set 260. If the registerflag is set, then the information stored in the temporary data structurepertaining to the data subject is transferred to the data subject datastructure for subsequent uses, the data subject is prompted for apassphrase, and the data repository software saves the transaction datato the data subject transaction log 262. If the register flag is notset, the transaction data remains in the temporary data structure untilit is discarded but is unavailable for future use. The transactionprocess ends 264.

In addition to registering during a purchasing transaction, a datasubject can also register by accessing the data repository and enteringthe purchasing information to become a registered data subject inadvance of any purchase.

Although the above description is directed at purchasing an item overthe Internet, the same concept of distribution of information can beapplied to other areas. In an alternative embodiment, the data subjectcan be an accessee, the data recipient can be an accessor, the datasubject data structure can be an accessee data structure, the datarecipient data structure can be an accessor data structure, the datasubject transaction log can be an accessee transaction log, and the datarecipient transaction log can be an accessor transaction log. Theaccessee can authorize the software on the data repository to provideinformation to an accessor. For instance, the accessee can be aprospective applicant applying for admission into an educationalinstitution such as a college or a university. In this case, theprospective applicant stores an entire range of information on the datarepository where the information is relevant to the initial screeningfor college applications. For example, SAT scores, addresses forreferences, personal information, responses to questions of desiredmajor or subject area would be information stored on the datarepository. This information could then be supplied to colleges whoseWeb sites could access the data repository for the desired information.

In yet another embodiment, the entity desiring to allow access to itsinformation can be a potential mortgage borrower, the entity desiringaccess can be a mortgage lender, and the information stored on the datarepository can be the borrower's financial information. In. the example,the borrower can authorize the software on the data repository toprovide the mortgage lender the information stored on the datarepository to allow the borrower to apply for a mortgage or to get aquote. Again, the borrower would provide a wide range of data necessaryfor the mortgage application process. The information can include theborrower's credit reports, bank statements, employment record, and othercredit related information.

In all of these different type of embodiments, the communicationsbetween the different parties can be encrypted in any manner known inthe art. In addition, some of the communications can be accomplished indifferent manners. For example, in an alternate embodiment of thepreferred embodiment, communications between the data repository and thedata recipient computer can occur using a separate communication link.The communication link can be a direct link between the data recipientand the data repository. Using this separate link can ensure againstunauthorized transactions.

Although the present invention has assumed the need for a gatewayconnecting the NCD network to the common network, the same conceptsdescribed herein apply to NCDs that do not require a gateway to connectto the common network.

Although the present invention has been described in detail for purposeof illustration, it is understood that such detail is solely for thatpurpose, and variations can be made therein by those skilled in the artwithout departing from the scope of the invention. The precedingdescriptions of the operations of the present invention are merelyillustrative. In various embodiments of the disclosed inventionsoperational steps may be added, eliminated, performed in parallel orperformed in a differing order. The apparatus and process of the presentinvention is defined by the following claims.

What is claimed is:
 1. A server that: communicates an offer and a cookiewith a customer; in response to the offer being communicated between thecustomer and a merchant, receives the offer and the cookie; in responseto the offer, determines an identity of the customer based on thecookie; retrieves previously stored payment data associated with thecustomer based on the determined identity; receives a purchase decisionfrom the customer; and sends the payment data to the merchant.
 2. Theserver of claim 1, wherein the server further: prompts the customer foridentification; receives identifying information from the customer; andverifies the customer based on the identifying information.
 3. Theserver of claim 2, wherein the identifying information includes anidentification number, an email address, and a passphrase.
 4. The serverof claim 2, wherein the server further: prompts the customer forpurchasing information; and receives the purchasing information from thecustomer.
 5. The server of claim 1, wherein the offer includes amerchant, a price, a merchant digital signature, and a transactionnumber.
 6. A computer-implemented method of consummating a commercialtransaction between a customer and a merchant, the method comprising:using a computer to communicate an offer and a cookie with the customer;in response to the offer being communicated between the customer and themerchant, receiving the offer and the cookie at the computer; inresponse to the offer, determining an identity of the customer based onthe cookie; using the computer to retrieve previously stored paymentdata associated with the customer based on the determined identity;receiving a purchase decision from the customer at the computer; andsending the payment data to the merchant.
 7. The method of claim 6,further comprising: prompting the customer for identification; receivingidentifying information from the customer; and verifying the customer atthe computer based on the identifying information.
 8. The method ofclaim 7, wherein the identifying information includes an identificationnumber, an email address, and a passphrase.
 9. The method of claim 7,further comprising: prompting the customer for purchasing information;and receiving, at the computer, the purchasing information from thecustomer.
 10. The method of claim 6, wherein the offer includes amerchant, a price, a merchant digital signature, and a transactionnumber.